home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #2 / Monster Media No. 2 (Monster Media)(1994).ISO / unix / xf86read.zip / XFREE86.HOW < prev   
Text File  |  1994-07-26  |  62KB  |  1,396 lines

  1.   The Linux XFree86 HOWTO
  2.   Helmut Geyer, Helmut.Geyer@iwr.uni-heidelberg.de
  3.   v2.1 , 1. June 1994
  4.  
  5.   This document describes how to obtain, install and configure
  6.   XFree86[TM] for Linux systems. XFree86  version 2 is an enhanced ver-
  7.   sion of the X Window System version 11 release 5 with support for many
  8.   versions of UN*X running on Intel[TM] 386/486/Pentium[TM] platforms,
  9.   including Linux. It supports a great amount of video hardware for
  10.   these systems and includes many bugfixes beyond the MIT standard
  11.   release of X.  It is intended to help Linux users install and config-
  12.   ure XFree86. It covers all versions of XFree86 starting from version
  13.   2.0.  It is furthermore intended to answer some basic questions about
  14.   X and programs using X.  Please read this file and the referenced doc-
  15.   umentation files BEFORE installing and starting XFree86. IF YOU ARE
  16.   NOT CAREFUL, YOU MIGHT DAMAGE YOUR HARDWARE.  If you have access to a
  17.   printer capable of printing DVI or PostScript[TM] documents, you
  18.   should consider to get those versions of this HOWTO as these provide
  19.   far more readability by better formatting.  A WWW version of this file
  20.   and many other HOWTOs can be found in the Linux Documentation Project
  21.   (http://sunsite.unc.edu/mdw/linux.html) homepage.
  22.  
  23.   1.  Introduction
  24.  
  25.   This file is meant to help you setting up your XFree86 system. It is,
  26.   however, far from complete. You have to look to several other files or
  27.   manpages to get complete information. It is noted at the appropriate
  28.   places, which files have to be read. For a complete description on
  29.   features and the installation please look at the documentation files
  30.   and manuals that come with XFree86 (residing in /usr/X386/lib/X11/etc
  31.   and its subdirectories as well as in /usr/X386/man/man?) (-- To read a
  32.   manpage just run man program_name, the other documentation files are
  33.   plain ascii and can be read with the editor of your choice or using
  34.   more or less.--) .  The most important files will be pointed out to
  35.   you in this HOWTO. The documentation files are packages separately in
  36.   a file called *-doc* [cf. ``Where do I get XFree86''] from the XFree86
  37.   binary distribution.
  38.  
  39.   Any bundeled distribution of XFree86 should include the documentation
  40.   files. If it doesn't, please contact the distributor on how to obtain
  41.   these.
  42.  
  43.   Other manual pages from the stock X11R5 distribution can be found in
  44.   the *-man* file of the XFree86 distribution. These manpages come as
  45.   sources for the nroff program.
  46.  
  47.   To read them you will need a working man program as well as the groff
  48.   package for formatting them. Note that it is often required to read
  49.   manpages, so you should install the groff package anyway. (I think it
  50.   is no good idea that in many distributions this package is considered
  51.   optional).
  52.  
  53.   This file comes WITHOUT ANY WARRANTY OF FITNESS. If you damage
  54.   anything following these informations, you are on your own.
  55.  
  56.  
  57.   1.1.  Copyright notice
  58.  
  59.   The XFree86 HOWTO is copyrighted (c) Helmut Geyer 1994
  60.  
  61.   A verbatim copy of the XFree86 HOWTO may be reproduced and distributed
  62.   in any medium physical or electronic without permission of the author.
  63.   Translations works are similarly permitted without express permission
  64.   if it includes a notice on who translated it. Commercial
  65.   redistribution is allowed and encouraged; however, the author would
  66.   like to be notified of any such distributions.
  67.   Short quotes may be used without prior consent by the author.
  68.   Derivative work and partial distributions of this HOWTO have to either
  69.   include a verbatim copy of this file or make a verbatim copy of this
  70.   file available. If the latter is the case, a pointer to the verbatim
  71.   copy must be stated at a clearly visible place. If you want to do
  72.   either of the last possibilities, you should contact the author.
  73.  
  74.   1.2.  Requirements on reading this HOWTO
  75.  
  76.   You should be aquainted to some very basic facts of a Unix, e.g. you
  77.   should be able to read a text file or read a manpage. A simple
  78.   introduction into Unix can be found in the Installation Guide &
  79.   Getting Started document by Matt Welsh. Everyone who installes and
  80.   runs Linux for the first time, should read this document. This
  81.   document is written in LaTeX and can be obtained in several forms
  82.   (PostScript, DVI, TeX or ASCII format) from sunsite.unc.edu in the
  83.   directory /pub/Linux/docs/LDP or from tsx-11.mit.edu in the directory
  84.   /pub/linux/docs/LDP by anonymous ftp.
  85.  
  86.   Many Linux distributions provide this document in at least one form.
  87.   You should find it in the /usr/doc directory. In this directory you
  88.   can find a lot of interesting documentation files, so you should check
  89.   this directory and read the appropriate files.
  90.  
  91.  
  92.   1.3.  Feedback
  93.  
  94.   Comments, criticism or suggestions on this document are very welcome.
  95.   If you think that something is missing, something is obsolete or
  96.   wrong, or something could be done better, feel free to contact Helmut
  97.   Geyer via email, Helmut.Geyer@IWR.uni-heidelberg.de.
  98.  
  99.  
  100.   1.4.  New versions
  101.  
  102.   The ASCII version of this document will be posted regularly to
  103.   comp.os.linux.announce, comp.windows.x.i386unix, news.answers, and
  104.   comp.answers.  In addition to those sites that archive the answers
  105.   newsgroups, the latest version can be found on sunsite.unc.edu in the
  106.   directory /pub/Linux/docs/HOWTO. This site carries not only the ASCII
  107.   version but also other formats (DVI, PostScript[TM] and HTML), too.
  108.   These other versions are easier to read than the ASCII version, so if
  109.   you have the resources to read or print these other versions, do it.
  110.  
  111.  
  112.   2.  What are X11 and XFree86?
  113.  
  114.   X11 is a windowing system for UN*X like operating systems.  The X
  115.   Windowing System was issued by the MIT Consortium (look at the X
  116.   manpage for more information) and is put under a very liberal
  117.   copyright, that allows any use of source code provided that the
  118.   original copyright notices are included. The release of X11 that
  119.   XFree86 2.* is based upon is X11 Release 5. The work of the MIT
  120.   Consortium is continued by the X Consortium that just released a new
  121.   release of X, X11R6.  The next official XFree86 release will be based
  122.   on X11R6 [cf Appendix ``The Future of XFree86''].  As X is the
  123.   standard windowing system for UN*X operating systems, there are a lot
  124.   of applications using it (both free and commercial).
  125.  
  126.   XFree86 2.* is a port of X11R5 that supports several versions of
  127.   Intel-based Unix and Unix-like operating systems.  The XFree86 servers
  128.   are partly derived from X386 1.2, which was the X server distributed
  129.   with X11R5, but many of them are newly developed. The accelerated
  130.   servers that are the most important change since XFree86 1.3 are
  131.   completely new. This release consists of many new features and
  132.   performance improvements as well as many bug fixes.  The release is
  133.   available as source patches against the MIT X11R5 code, as well as
  134.   binary distributions for many architectures.
  135.  
  136.   Note that while the source and installation trees retain the name
  137.   'X386' name (for simplicity of maintenance of the source tree), there
  138.   is no connection between XFree86 and the commercial X386 product sold
  139.   by SGCS.  The XFree86 Project maintains technical contacts in an
  140.   effort to keep user-affecting changes to the workings of the products
  141.   from diverging too radically.  There is no direct involvement of
  142.   either group in the workings of the other.
  143.  
  144.  
  145.   2.1.  The XFree86 Project, Inc.
  146.  
  147.   The XFree86 team had several problems in the past due to the fact that
  148.   it was no legal organisation. So it was not possible to become a
  149.   member of the X Consortium, Inc. This was sometimes annoying as the
  150.   new releases are only provided for members before the official release
  151.   date. This and several other thoughts led to the foundation of The
  152.   XFree86 Project, Inc.
  153.  
  154.   XFree86 is now a trademark of The XFree86 Project, Inc.  For more
  155.   information read the section on The XFree86 Project in the file
  156.   /usr/X386/lib/X11/etc/README from the documentation tarfile.
  157.  
  158.  
  159.  
  160.   3.  Supported Hardware
  161.  
  162.   As this is the most often asked question, this will be the first
  163.   section.  Currently XFree86 (Version 2.0 - 2.1.1) supports the
  164.   following chipsets in the XF86_SVGA server (note that it depends on
  165.   the chipset whether a card is working and not on the vendor, with
  166.   Diamond notably excluded, cf. the remark at the end of this
  167.   paragraph):
  168.  
  169.   o  nonaccelerated chipsets:
  170.  
  171.   o  Tseng ET3000, ET4000AX, ET4000/W32
  172.  
  173.   o  Western Digital/Paradise PVGA1
  174.  
  175.   o  Western Digital WD90C00, WD90C10, WD90C11, WD90C24, WD90C30
  176.  
  177.   o  Genoa GVGA
  178.  
  179.   o  Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000,
  180.      TVGA9000i, TVGA9100B, TVGA9200CX, TVGA9320, TVGA9400CX, TVGA9420
  181.  
  182.   o  ATI 28800-4, 28800-5, 28800-6, 28800-a
  183.  
  184.   o  NCR 77C22, 77C22E, 77C22E+
  185.  
  186.   o  Cirrus Logic CLGD6205, CLGD6215, CLGD6225, CLGD6235
  187.  
  188.   o  Compaq AVGA
  189.  
  190.   o  OAK OTI067, OTI077
  191.  
  192.   o  accelerated chipsets:
  193.  
  194.   o  Cirrus GLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428
  195.  
  196.   o  Western Digital WD90C31
  197.  
  198.      Note that the WD90C33 is currently not supported by any of the non-
  199.      generic servers. There are additional problems with the generic
  200.      servers of XFree86 2.0, too. Please look at the section on bugs and
  201.      fixes.
  202.  
  203.   These chipsets are all supported in 256 color (XF86_SVGA) and in
  204.   monochrome mode (XF86_Mono) with the exception of the Cirrus chipsets,
  205.   which are only supported in 256 color mode (-- Note that if you have a
  206.   grey scale display you need to run the colour server as grey scale
  207.   behaves just like colour, not like monochrome mode--) . Note that the
  208.   ET4000/W32 is only supported as a ET4000 clone and none of the
  209.   accelerated functions are used.
  210.  
  211.   The monochrome server also supports generic VGA cards (using 64k of
  212.   the video memory as a single bank), the Hercules card and the Hyundai
  213.   HGC-1280. Note that these drivers are not part of the XF86_Mono server
  214.   by default. If you want to use these, you have to reconfigure your
  215.   XF86_Mono server using the LinkKit (or, of course, the source
  216.   distribution - but the LinkKit will need less disk space and less
  217.   compile time). See the Appendix for further information on using a
  218.   Hercules mono card.
  219.  
  220.   There is an (experimental) additional server that works on generic VGA
  221.   hardware: XF86_VGA16, a 16 color server.
  222.  
  223.   XFree86 supports the following accelerated chipsets with separate
  224.   servers:
  225.  
  226.   o  S3   86C911, 86C924, 86C801, 86C805, 86C928 supported by the
  227.      XF86_S3 server
  228.  
  229.   o  ATI  mach8 supported by the XF86_Mach8 server
  230.  
  231.   o  ATI  mach32 supported by the XF86_Mach32 server
  232.  
  233.   o  IBM  8514/a and true clones supported by the XF86_8514 server
  234.  
  235.      Currently the S3 Vision864 and Vision964 are not yet working.
  236.  
  237.   No other chipsets are supported; not Weitek P9000, not TIGA, not IIT
  238.   AGX, not Microfield, not the new MGA chipsets (as in the Matrox
  239.   cards), etc.  Support for some of these will perhaps be provided in
  240.   future XFree86 releases.  TIGA will never be supported, as it requires
  241.   licensing materials from TI (and may disallow source distributions);
  242.   Microfield boards will never be supported, as they use proprietary and
  243.   undocumented custom microcode interfaces.  Note further: The following
  244.   is a statement of the XFree86 Project concerning graphic cards by
  245.   Diamond:
  246.  
  247.        All Diamond cards are NOT supported by XFree86 even if they
  248.        have a supported chipset (with  the exception of the Cirrus
  249.        chipsets that have an internal clock generator). The reason
  250.        for this is that Diamond has changed  the mechanism used to
  251.        select  pixel   clock  frequencies, and  will only  release
  252.        programming information under  non-disclosure.   We are not
  253.        willing to do this (as it would mean  that source cannot be
  254.        provided).  We have had discussions with Diamond over this,
  255.        and they do not  intend to  change  this policy.  Hence  we
  256.        will do nothing  to support Diamond products  going forward
  257.        (i.e.  don't  send us a program  to run  set their clocks).
  258.        XFree86 DOES NOT SUPPORT  DIAMOND HARDWARE.  It is possible
  259.        to make some  of it work, but  we will not assist  in doing
  260.        this.
  261.  
  262.  
  263.   The author of this HOWTO does support this statement completely. If
  264.   you have read this and bought nevertheless a card from Diamond, you
  265.   will damage the idea of free software as Diamond does not support the
  266.   efforts of a free X11 server. There is enough good and affordable
  267.   graphics hardware available from companies that support XFree86.
  268.  
  269.   However, if you are stuck with a card from Diamond, there is a
  270.   compilation of the needed things to get XFree86 running on some of
  271.   these cards. It is called the Diamond.FAQ and can be obtained from
  272.   sunsite in the X11 directory.
  273.  
  274.   Do not ask the XFree86 team about Diamond hardware.  You will simply
  275.   annoy them, and get no information.
  276.  
  277.   For some of these chipsets there are specific README files (to be
  278.   found in /usr/X386/lib/X11/etc). If there is one for the chipset you
  279.   use, read it!  In these READMEs the specific options that can be used
  280.   to configure the server are explained. Currently there are special
  281.   READMEs for ATI, Trident, Tsengm Western Digital, and Cirrus chipsets.
  282.  
  283.   More information on the servers can be found in their manpages.
  284.  
  285.   Later more on configuring the servers [cf. ``The Xconfig File''].
  286.  
  287.  
  288.   4.  Installing XFree86
  289.  
  290.   4.1.  Where do I get XFree86 and what do I need to run it?
  291.  
  292.   This section is dedicated to the Linux binary distribution so all file
  293.   names and site names are for Linux only. If you read this file and are
  294.   not using Linux, you should get your hands on the announcement of the
  295.   according version of XFree86 for you OS. In it you will find all
  296.   necessary information on obtaining it.
  297.  
  298.   You can get the binary distributions of XFree86 for Linux via
  299.   anonymous FTP from
  300.  
  301.  
  302.  
  303.          tsx-11.mit.edu:/pub/linux/packages/X11/XFree86-ver
  304.                  or
  305.          sunsite.unc.edu:/pub/Linux/X11/XFree86-ver
  306.  
  307.  
  308.  
  309.  
  310.   where ver is the version number of the XFree86 release you want to
  311.   obtain (e.g. 2.1 for XFree86 2.1).  The files have names of the form
  312.   XF86-ver-name.tar.gz (versions 2.1 and 2.1.1) or xf86-name-2.0.tar.gz
  313.   where ver is the XFree86 version and name is the name of the package.
  314.   If you already know, which server you need to run, you should not get
  315.   the *-svr* file but the file XF86_servername.tar.gz where servername
  316.   is the name of the server to run.
  317.  
  318.   To get Version 2.1.1, which is only a bugfix release, you have to get
  319.   the complete 2.1 distribution but the server files. In addition you
  320.   have to get the 2.1.1 files (you will probably need only one server
  321.   file, but you should get all the rest).  Install the 2.1 files first
  322.   and install the 2.1.1 files only after that.
  323.  
  324.   Of course you can find it on all mirrors of those two, too. So please
  325.   look for a ftp site near to you mirroring sunsite or tsx-11 to save
  326.   bandwidth.
  327.  
  328.   You can find an incomplete list of sites mirroring these two in the
  329.   bbs-list to be found in the docs directories of both sites. If you
  330.   have access to archie, try using it to find a site carrying Linux in
  331.   your neighbourhood.
  332.  
  333.   The distribution consists of several gzipped tarfiles. As some of them
  334.   are too large to fit on a single floppy, so you might have to split
  335.   those). For a concise description on what the tarfiles contain, look
  336.   at the README file in this directory.
  337.  
  338.   You will need the following setup to run XFree86 (split by versions).
  339.   You have to have at least these versions, later versions will work,
  340.   too.
  341.  
  342.  
  343.        XFree86 version:         2.0         2.1         2.1.1
  344.  
  345.        kernel version:      0.99pl13      0.99pl15  0.99pl15h
  346.        C library version       4.4.1        4.5.21     4.5.21
  347.        ld.so version:            1.3         1.4.3      1.4.3
  348.  
  349.  
  350.  
  351.  
  352.   You can find the most recent versions on most linux sites [cf. ``Where
  353.   do I get XFree86'']. You can find the C library (libc) and the dynamic
  354.   loader (ld.so) in the GCC directory on these sites.
  355.  
  356.   You will need a main memory of at least 8 MB and a virtual memory of
  357.   at least 16 MB (i.e. main memory + swap). It is possible to run X on a
  358.   4 MB machine if you take some precautions on memory usage [cf.
  359.   ``tinyX''].Note that you should nevertheless have 16 MB of virtual
  360.   memory (so if you have 4 megs of physical RAM, you should have 12 megs
  361.   of swap). It is recommended that you have at least 8 megs of physical
  362.   RAM, as swaping is very slow.  With only 4 megs of physical RAM,
  363.   performance will suffer greatly. To run X11 comfortably, 8 MB are
  364.   needed.
  365.  
  366.   If you want to run memory-hog programs from within X (as e.g. gcc) you
  367.   should at least have 16 MB of main memory and another 16MB of swap.
  368.  
  369.   You will need about 17 MB of disk space for the complete installation
  370.   without LinkKit, 21 MB with LinkKit. By deleting those servers that
  371.   you don't need and removing the LinkKit after linking your own server,
  372.   you can save several MB of diskspace.
  373.  
  374.   Before installing XFree86, you should make a backup of all files that
  375.   you changed. They may not be usable, but they still hold a lot of
  376.   information you might want to preserve. (Your old XConfig file will
  377.   not be deleted, but it's allways better to have a backup of this file)
  378.  
  379.   To install the binary distribution you have to do the following as
  380.   root with all needed tarfiles from above. For installing XFree86 2.0
  381.   (which is not recommended) you have to do it from /, for 2.1 or 2.1.1
  382.   you have to run first mkdir /usr/X386 ; cd /usr/X386 [cf
  383.   ``Upgrading''].  To get all permissions right you should run umask 022
  384.   before installing it.
  385.  
  386.  
  387.        gzip -dc tarfilename | tar xvvof -
  388.  
  389.  
  390.  
  391.  
  392.   WARNING: This will overwrite all files from an older XFree86 version,
  393.   of course not the Xconfig file (if you did not link it to Xcon-
  394.   fig.sample, which you should not do). In other words, only if Xcon-
  395.   fig.sample is linked to your Xconfig, it will be overwritten. Many
  396.   other files will be overwritten, though (e.g. the xdm configuration
  397.   files, the system wide twm configuration file, ...). So you should
  398.   backup every file you changed before installing XFree86.
  399.  
  400.   After installing it, you have to set it up correctly to match your
  401.   system [cf. ``Setting up XFree86''].
  402.  
  403.  
  404.   4.2.  How do I compile it myself and where can I get the sources?
  405.  
  406.   You do not want to do this. Only if you really want to make changes to
  407.   the sources because something is not working you should consider this.
  408.   You will need a lot of disk space and CPU time to do a complete build
  409.   of the XFree86 system. Anything you need to know for compiling XFree86
  410.   you can find in the following files (to be found in
  411.   /usr/X386/lib/X11/etc): INSTALL, README, and README.Linux.
  412.  
  413.   Note that you should not compile XFree86 to get rid of some hardcoded
  414.   restrictions (e.g. on the maximal pixel clock) as without these
  415.   restrictions your hardware will probably break down.
  416.  
  417.   To build a server that only includes those drivers you need, you
  418.   should use the LinkKit instead of compiling the complete system. This
  419.   is much easier. Read /usr/X386/lib/Server/README for a description how
  420.   to do this. This file is not included in the standard XFree86 tarfiles
  421.   but is part of the file that includes the LinkKit. This file is called
  422.   *-kit* or *-lkit*.
  423.  
  424.   For adding drivers to the SVGA servers you will only need the LinkKit.
  425.   The documentation how to do this can be found in the
  426.   /usr/X386/lib/Server/VGADriverDoc directory after installing the
  427.   LinkKit package.
  428.  
  429.  
  430.  
  431.   5.  Setting up your XFree86 system
  432.  
  433.  
  434.   This section gives a short introduction on how to set up a XFree86
  435.   system on your computer. The most important (and most difficult) part
  436.   is setting up a Xconfig file. If you have XFree86 2.1.1 and your
  437.   graphic card is in the data base, you should use ConfigXF86 to do
  438.   this. It is comfortable and safe that way. You can use ConfigXF86 for
  439.   many things even if your card and monitor are not known to the
  440.   program. Please use it if you have XFree86 2.1.1.
  441.  
  442.  
  443.  
  444.   5.1.  The Xconfig file
  445.  
  446.   To be able to set up a Xconfig file, you need to read the following
  447.   files that reside in /usr/X386/lib/X11/etc: README, README.Config,
  448.   VideoModes.doc, and README.Linux.
  449.  
  450.   Furthermore you need to read the following manpages: Xconfig, XFree86,
  451.   XFree86kbd, and that of the server you are going to use. This section
  452.   will try to give you an approach to these files as well as making some
  453.   of the statements in those more understandable for the unexperienced
  454.   user.
  455.  
  456.   The Xconfig file can be located in several places:
  457.  
  458.   o  /usr/X386/lib/X11. This is the standard location for the sample
  459.      Xconfig file, but is in some cases not possible to use (e.g. a
  460.      read-only /usr partition).
  461.  
  462.  
  463.   o  /etc.
  464.  
  465.   o  In the user's home directory.
  466.  
  467.   o  As Xconfig.hostname in /usr/X386/lib/X11.
  468.  
  469.      The Linux file system standard places the Xconfig file into
  470.      /etc/X11. This has several causes, but you should never edit that
  471.      file. The XFree86 servers will not expect a Xconfig file at this
  472.      location, so there has to be a link from one of the above places to
  473.      this location.  Find this link first and access the file using the
  474.      link. This way you can be sure your changes will take effect.
  475.  
  476.   To give you some hints, here is a list of what you need to set up the
  477.   Xconfig file correctly:
  478.  
  479.   o  The server that is suitable for you system. To get a hint which is
  480.      the correct one, run the SuperProbe program that comes with
  481.      XFree86. It will identify your chipset and you can look at the
  482.      table above [cf. ``Supported Hardware''], which server supports
  483.      this chipset. Note that SuperProbe can detect far more hardware
  484.      than XFree86 supports.
  485.  
  486.   o  The specifications of your monitor. Most important are the maximal
  487.      horizontal and vertical scan frequency ranges and the bandwidth of
  488.      the monitor. This information should be obtained from your
  489.      monitor's datasheet. See the video mode section ``Setting up video
  490.      modes'' for further information.
  491.  
  492.   o  The name of the chipset for your card. See ``The server section''
  493.      for more information.
  494.  
  495.   o  The available dot clocks for your card or (if supported) the name
  496.      of the programmable dot clock generator. How to obtain these is
  497.      explained concisely in /usr/X386/lib/X11/etc/README.Config.  This
  498.      will be done automagically by ConfigXF86. Note that if you have a
  499.      programmable clock generator, you have to look in the Xconfig
  500.      manpage, whether it is supported. A programmable clock cannot be
  501.      detected properly.
  502.  
  503.   o  Mouse type (this refers to the protocol the mouse is using, not to
  504.      the manufacturer, e.g. a serial microsoft mouse connected to the
  505.      ps/2 port uses the ps/2 protocol, not the Microsoft protocol). See
  506.      ``The easy sections'' for more information.
  507.  
  508.   o  The device name of the device your mouse is connected to. See ``The
  509.      easy sections'' for more information.
  510.  
  511.   o  If you want to use a national keyboard map for the kernel (i.e. you
  512.      are not running the generic US keytable), you should read
  513.      ``International keyboard layout'' to set up XFree86 correctly.
  514.  
  515.      You should read README.Config that is located in
  516.      /usr/X386/lib/X11/etc and follow the instructions there to the
  517.      point. Especially the caveats that can be found int this file must
  518.      be obeyed, otherwise you might damage your hardware.
  519.  
  520.   WARNING: Do not ever share Xconfig files with people  who do not have
  521.   exactly the same Configuration (i.e. graphic card and monitor). By
  522.   doing  this you could  toast your  monitor.  It isn't  so hard  to
  523.   figure out modes (that is, for  multisync monitors) and you surely
  524.   shouldn't ever use a mode that you  didn't check by yourself to be
  525.   within your  monitor's specs.  Even if  you have  exactly the same
  526.   setup  you should check all modes yourself before trying them. There
  527.   are  many people who  run their hardware out of specs which may not
  528.   damage their hardware but could yours.
  529.   5.1.1.  Running ConfigXF86
  530.  
  531.   From XFree86 2.1.1 on there is a great tool available for XFree86,
  532.   called ConfigXF86. It was written by Stephen Zwaska, comments and new
  533.   database entries should be sent to him (stz@netcom.com). This utility
  534.   will give you an easy interface to the database of tested graphic
  535.   cards and monitors and it gives you some tools to configure your
  536.   Xconfig file correctly. The documentation for ConfigXF86 is located in
  537.   /usr/X386/lib/X11/ConfigXF86. Please read this first, it will help you
  538.   to run this program. This documentation is provided in several
  539.   formats. A text version (ConfigXF86.txt) can be read online, a
  540.   PostScript version (ConfigXF86.PS) can be printed if a PostScript
  541.   printer is available. ConfigXF86 can be obtained from sunsite in the
  542.   directory /pub/linux/packages/X11/ConfigXF86.
  543.  
  544.   After having read the documentation, start ConfigXF86 as root.  The
  545.   program cannot be run while a X server is running on the system, so
  546.   run ConfigXF86 (and if needed MakeCard) from the console.  You should
  547.   be able to answer all questions. The program will probe your system
  548.   and will (at least partly) recognize the setup. If both your graphic
  549.   card and monitor are supported, you should not have any problems. The
  550.   only thing you should do is test the video modes and (perhaps) try to
  551.   make minor changes to the video modes to suit your monitor better [cf.
  552.   ``Setting up video modes''].
  553.  
  554.   This utility is very new, so there might be bugs (very probably there
  555.   are). If you encounter any problems, please report them.
  556.  
  557.   If your card is not supported, try to make a card database file using
  558.   the MakeCard program that can be found in
  559.   /usr/X386/lib/X11/ConfigXF86. Please read the next two sections before
  560.   running it as it may help you with some questions.  Having done that
  561.   you can run ConfigXF86 and choose the datafile you just generated.
  562.   Don't forget to send the card data file and the monitor data files to
  563.   stz@netcom.com so that other people may benefit from your
  564.   achievements.
  565.  
  566.   5.1.2.  The easy sections
  567.  
  568.   5.1.2.1.  Remark:
  569.  
  570.   The XFree86 servers parse the Xconfig file in case-insensitive mode,
  571.   so you need not woory about Capitalization.
  572.  
  573.  
  574.   5.1.2.2.  Paths:
  575.  
  576.   There is no reason to fiddle with the standard paths as provided in
  577.   the sample Xconfig file (any distribution that provides a different
  578.   path structure should have edited this section of the Xconfig.sample
  579.   or the template Xconfig file for ConfigXF86).  The only thing that
  580.   could be interesting is the use of a fontserver.  Look at the Xconfig
  581.   manpage if you want use one, anything you need to know is shown there.
  582.   ConfigXF86 will prompt you whether you want to use a fontserver.
  583.  
  584.   5.1.2.3.  The keyboard section:
  585.  
  586.   This is fairly easy. You should set the ServerNumlock option, but
  587.   otherwise only those keyboard modifications that are needed for
  588.   international keyboard support should be needed to set [cf.
  589.   ``International keyboard layout''].  So this section should look like:
  590.  
  591.  
  592.  
  593.  
  594.  
  595.   ______________________________________________________________________
  596.   keyboard
  597.       servernumlock
  598.       RightAlt ModeShift
  599.   ______________________________________________________________________
  600.  
  601.  
  602.  
  603.  
  604.   5.1.2.4.  The mouse section:
  605.  
  606.   The keyword for the mouse section is the name for the protocol the
  607.   mouse uses. The available protocol names are listed in the Xconfig
  608.   manpage. Some remarks on the mouse keywords:
  609.  
  610.   The Logitech[TM] serial mice use several keywords: The MouseMan[TM]
  611.   uses the MouseMan keyword and more recent Logitech serial mice use the
  612.   Microsoft keyword. Older Logitech serial mice use the Logitech
  613.   keyword.
  614.  
  615.   Any mouse connected to the ps/2 port uses the ps/2 keyword (even if it
  616.   is in fact a serial mouse).
  617.  
  618.   As there is some confusion on the Linux mouse devicenames, here is a
  619.   list. The standard names confer to the names as of MAKEDEV 1.2. If you
  620.   are not sure, which kind of busmouse you have, look at the startup
  621.   messages of the kernel. It will identify the busmouse type. You should
  622.   make sure that the kernel busmouse driver is using the same IRQ as the
  623.   busmouse. If this is not the case, you have to change this (either on
  624.   the mouse board or in the kernel). The IRQ for busmouse devices is
  625.   given in /usr/src/linux/include/linux/busmouse.h. The macro MOUSE_IRQ
  626.   contains this IRQ. It is set to 5 by default.
  627.  
  628.   o  /dev/atibm for the ATI XL busmouse (Note: the ATI GU busmouse is a
  629.      Logitech or Microsoft busmouse depending on the version you got).
  630.  
  631.   o  /dev/logibm for the Logitech busmouse (Note: this uses the Busmouse
  632.      protocol, not the Logitech protocol).
  633.  
  634.   o  /dev/inportbm for the Microsoft[TM] busmouse (Note: this uses the
  635.      Busmouse protocol, not the Microsoft protocol).
  636.  
  637.   o  /dev/psaux for a ps/2 or quickport mouse (uses the ps/2 protocol).
  638.  
  639.   o  The other supported mice are serial mice, therefore the device
  640.      names are that of the serial devices (/dev/ttyS? or /dev/ttyS?? for
  641.      Linux).
  642.  
  643.      There are still distributions around that use old or different
  644.      device names than those of MAKEDEV. A list of the major and minor
  645.      numbers for the mouse devices can be found in the/dev/MAKEDEV
  646.      script. If it is missing you can find it on sunsite in the
  647.      /pub/Linux/system/Admin directory [cf ``Where do I get XFree86''].
  648.  
  649.   If you have a two-button mouse, you might want to emulate the third
  650.   button (emulated by pressing both buttons simultaneously) by setting
  651.   Emulate3Buttons in the mouse section. There are quite a lot of other
  652.   settings available that are usually not needed. Look at the Xconfig
  653.   manpage for a list of available settings.
  654.  
  655.  
  656.   5.1.3.  The server section
  657.  
  658.   You should be able to set up this section by using the ConfigXF86
  659.   program. If your graphic card is not part of the database, run
  660.   MakeCard to build a new data file for your card. Many important things
  661.   are probed by MakeCard, but you may need or want to set additional
  662.   options. These options are described in the manpage of the server you
  663.   want to use (MakeCard will suggest the right one) and in
  664.   README.Config. After running MakeCard, run ConfigXF86 to set up the
  665.   Xconfig file.  If you do not have the ConfigXF86 package, you should
  666.   follow the instructions in README.Config to get everything right.
  667.  
  668.   If you want to identify the chipset your graphic card uses, run
  669.   SuperProbe, a program that comes with XFree86 and is capable to
  670.   identify a lot of graphic hardware. Note that SuperProbe can probe far
  671.   more hardware than XFree86 supports.
  672.  
  673.  
  674.   5.1.4.  Setting up video modes
  675.  
  676.   This is the hardest part. Please read VideoModes.doc before doing
  677.   anything here. If you are using ConfigXF86 (which is strongly
  678.   recommended), and your monitor is not in the database, you should
  679.   choose the generic modes and start making own modes from there.  If
  680.   you do not have ConfigXF86, a tutorial on building modes can be found
  681.   in the README.Config and VideoModes.doc files.
  682.  
  683.   ConfigXF86 includes a very neat utility to tune video modes. As there
  684.   is no check on the fitness of a mode, you have to check the mode data
  685.   against your monitor's specifications before testing the mode. The
  686.   first line of the screen for tuning modes gives you information on the
  687.   specifications of the mode. You have to check always that these values
  688.   are within you monitor's capabilities before testing that mode.
  689.  
  690.  
  691.   5.1.5.  International keyboard layout for XFree86
  692.  
  693.   From version 2.1 on the XFree86 servers are able to read the keytable
  694.   from the Linux kernel. So you need to set up only one keyboard layout
  695.   file (that for the kernel). There are some restrictions, though (the
  696.   kernel can support more keyboard functions than X11). X11 can only use
  697.   4 keytables (i.e. only one modifier is allowed, called ModeShift).
  698.   This can be configured using the ModeShift line in the Xconfig file.
  699.   Configurable keys for the ModeShift modifier are LeftAlt, RightAlt
  700.   (=AltGr), RightCtl, and ScrollLock.  By default the ModeShift modifier
  701.   is not used.
  702.  
  703.   Usually the AltGr key is used for national keyboard modifications. To
  704.   enable the XFree86 server to read the AltGr keytable from the kernel,
  705.   you should put
  706.  
  707.   RightAlt "ModeShift"
  708.  
  709.  
  710.  
  711.   Besides supporting only one additional keymap X11 cannot use 'dead'
  712.   keys. A key is called 'dead', if it will not print a character when it
  713.   is typed but only after a second character is typed. Depending on the
  714.   following character, the second character is modified by the 'dead'
  715.   character or two characters will be printed.  A typical example are
  716.   accent keys.  Such keys are not supported by X11. So you need to
  717.   replace all dead keysymbols non-dead equivalents. Here is a list, what
  718.   you have to change:
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.            dead         non-dead
  728.  
  729.          dead_tilde    asciitilde
  730.          dead_grave         grave
  731.     dead_circumflex   asciicircum
  732.          dead_acute    apostrophe
  733.      dead_diaeresis     diaeresis
  734.  
  735.  
  736.  
  737.  
  738.   Instead of supporting dead keys XFree86 supports a Compose key. This
  739.   feature is described in the XFree86kbd manpage and can be modified by
  740.   assigning the Compose function to one of the keys mentioned above. By
  741.   default the ScrollLock key has the Compose function.
  742.  
  743.   If you still want to have the 'dead' keys on the console, you will
  744.   have to use a xmodmap file to map the keys to the right symbols under
  745.   X. This is also the method that must be used with earlier versions of
  746.   XFree86. On sunsite in the directory /pub/Linux/X11/misc example
  747.   xmodmap files for several languages can be found. Note that you have
  748.   to set the ModeShift modifier nevertheless to get the right keytable
  749.   working.
  750.  
  751.   Please read the kbd.FAQ that comes with the kbd package for Linux. You
  752.   will find many hints on modifying your keyboard layout  on the console
  753.   as well as for X.
  754.  
  755.  
  756.   5.2.  The .xinitrc file
  757.  
  758.   To use X, you need a startup file that calls the local modifications,
  759.   the window manager and some application you want to have right after X
  760.   has started. If you are using startx (or runx) to start X, this
  761.   startup file is called 'xinitrc'. There is a standard xinitrc file,
  762.   /usr/lib/X11/xinit/xinitrc (-- This is the traditional location for
  763.   this file. The Linux filesystem standard places this file to
  764.   /etc/X11/xinit/xinitrc in order to allow a read-only mounted /usr
  765.   partition. So you should look at that location first.--)
  766.  
  767.   . If you are not content with what this file does (e.g. you want to
  768.   use a different window-manager), you should copy this file to the file
  769.   .xinitrc in your home directory. After copying the file, you can edit
  770.   it. Look at the manpages for startx and xinit for more information.
  771.  
  772.   Note that both the .xinitrc and the .Xresources file must be readable
  773.   and executable, so run chmod u+rx .xinitrc and chmod u+rx .Xresources
  774.   after editing them.
  775.  
  776.  
  777.   5.3.  The personal X resource file
  778.  
  779.   Sometimes you won't be content with default settings for several
  780.   applications which often don't have a configruration file of their
  781.   own. You can change some of these defaults by setting X resources in
  782.   the .Xresources file in your home directory. Note that you should know
  783.   what effects the setting of the resources has to the programs you use.
  784.   Read the manpages for the program and for xrdb before fiddling with
  785.   the Xresources file. This section is not needed to set up working X
  786.   environment, but to customize a working one.
  787.  
  788.   A resource file looks like an application default file (with the
  789.   difference that in the resoucre file resources for several
  790.   applications are set, you should use the full names
  791.   (Progname.Resourcename) instead of abbreviating the program name by an
  792.   asterisk.  Examples of application default files can be found in the
  793.   /usr/X386/lib/X11/app-defaults directory.  Which resources are
  794.   available for a single application is usually shown in the manpage of
  795.   the application.
  796.  
  797.   If you are running a colour server, you might want to put
  798.  
  799.  
  800.        ______________________________________________________________________
  801.        #ifdef COLOR
  802.        *customization: -color
  803.        #endif
  804.        ______________________________________________________________________
  805.  
  806.  
  807.  
  808.  
  809.   into your .Xresources file if some programs start up b&w and not
  810.   colourful. If the upper change is made (it definetly should be in the
  811.   system Xresources file, so you might hint that to the distribution
  812.   maintainer), a program foo will read both the Foo and the Foo-color
  813.   application default file from /usr/X386/lib/X11/app-defaults, not just
  814.   the first which is the usual behaviour.
  815.  
  816.   Note that the b&w outfit of a program may caused by the program not
  817.   supporting colours.
  818.  
  819.   5.4.  Using xdm
  820.  
  821.   If you want to run X on your system all the time, you could run xdm
  822.   from the system startup. xdm is preconfigured on most systems, so you
  823.   should not have to edit any of the xdm configuration files.  Usually a
  824.   runlevel is attached to a X-only system (look into /etc/inittab), all
  825.   you have to do to get it working is changing the default runlevel. On
  826.   systems that use an init without runlevels (run man init to see,
  827.   whether or not), you should look into the /etc/rc and /etc/rc.local
  828.   files, you usually only have to remove comment signs at the beginning
  829.   of a line that calls xdm. If no such line is present, you probably
  830.   have a system that has no preconfigured xdm. Look at the manpages to
  831.   see what has to be done (and complain to the distribution maintainer,
  832.   if the distribution contains XFree86). If you install XFree86 on top
  833.   of a distribution that is not providing X support, you should get
  834.   enough information from the manpages. Help is also available from the
  835.   X Faq, look at section ``Finding Information'' where to get this.
  836.  
  837.   xdm runs by default the .xinitrc [cf ``The .xinitrc file'']and the
  838.   .Xresources [cf ``The personal X resource file''] files, so look at
  839.   the sections above.
  840.  
  841.   5.5.  Configuration of the window manager
  842.  
  843.   Window managers are a very local issue. There are quite a lot window
  844.   managers available [cf. ``X related packages'']. Configuration of one
  845.   windowmanager is quite different from that of another. You should look
  846.   at your .xinitrc file or the system xinitrc [cf ``The .xinitrc file'']
  847.   file, which window manager is used (hint: most window managers have a
  848.   wm ending) and look at its manpage. Configuration is usually explained
  849.   there.  The most common used window managers for Linux are:
  850.  
  851.   twm (part of the XFree86 distribution), fvwm (this seems to be the
  852.   most popular), olwm or olvwm (from the Xview[TM] package), or mwm
  853.   (part of Motif[TM]).
  854.  
  855.   5.6.  Running X
  856.  
  857.   Once you have set up a Xconfig file, you probably want to run X.  This
  858.   is not done by running X, but by running startx.  When running it for
  859.   the first time run startx 2>1 > Xstartup.log  (--  For csh users this
  860.   should read startx >&  Xstartup.log .--)
  861.  
  862.   to get a log file of the X startup. If problems are encountered, this
  863.   file will help you by providing information for you and for anyone you
  864.   ask about your problems.
  865.  
  866.   If you encounter any problems, please look at the Appendix ``Some
  867.   Questions and Answers'' and at the XFree86 documentation files in
  868.   /usr/X386/lib/X11/etc. These files provide a lot of information on
  869.   what to do if problems occur. If you still cannot solve the problems,
  870.   procede as in Section ``Finding Information''. The FAQs that are
  871.   mentioned there provide help on many problems you have with X, so you
  872.   should get these and read them, too.
  873.  
  874.   You should make sure that the PATH and MANPATH (or path and manpath
  875.   for csh derivates) variables are set correctly.
  876.  
  877.  
  878.   6.  tinyX - a XFree86 based package for low memory systems
  879.  
  880.   Note that while you can run X on 4 MB RAM systems using tinyX, it is
  881.   not useable for more complex applications or several applications at
  882.   the same time.
  883.  
  884.   If you have not enough memory to run the stock XFree86 distribution,
  885.   you might try to get this package. It is based on XFree86, so the
  886.   difficult parts of the configuration (setting up the Xconfig file) are
  887.   identical. To run it you need at least 4 MB RAM and another 12 MB swap
  888.   space.  There are now several tinyX versions, one for each of the
  889.   different servers supplied by XFree86. Please read the above
  890.   description of the servers to get the right version of tinyX. These
  891.   packages are named like
  892.  
  893.   tinyX-YYY-ver.tar.gz, where YYY denotes the server name (without
  894.   leading XF86_)
  895.  
  896.   You can find tinyX on sunsite in the /pub/Linux/X11 hierarchy.  Please
  897.   look in your neighbourhood for a Mirror of it [cf. ``Where do I get
  898.   XFree86''].  You untar it as root from /. After this you have to setup
  899.   a Xconfig file [cf. ``The Xconfig file''].  The documentation and
  900.   READMEs for tinyX as well as most of the XFree86 documentation files
  901.   can be found in /readmes. Read the XFree86 documentation files before
  902.   setting up a Xconfig file as they are required for this.
  903.  
  904.   The tinyX documentation includes a lot of useful information on memory
  905.   saving techniques. You should follow at least some of these
  906.   suggestions, as running X while swapping constantly is no fun at all
  907.   :-(.  If you are running out of memory your system will lock up
  908.   completely (in many cases the only way out is to turn off power or to
  909.   make a hard reset - both is very dangerous for your filesystem). So
  910.   read these files before starting X so that this does not happen. You
  911.   should read the sections on configuring your X11 system, too [cf.
  912.   ``The .xinitrc file'', ``Using xdm'', ``Configuration of the window
  913.   manager'', and ``Running X''].
  914.  
  915.   As tinyX does not include all documentation available with XFree86,
  916.   you might notice that you are pointed to a file that is not included.
  917.   In this case you must get the rest of the documentation files (and
  918.   perhaps the manpages, too) from any XFree86 site [cf. ``Where do I get
  919.   XFree86'']. If you have enough disk space for that, this is highly
  920.   recommended anyway.
  921.  
  922.   Note that XFree86 specific manpages (as the Server manpages,...)  are
  923.   not in the *-man* but in the *-doc* files.
  924.  
  925.   7.  X related packages
  926.  
  927.   There are a lot of packages that are related to X. The first two are
  928.   mentioned by name, as they have a great influence on the look-and-feel
  929.   of X.
  930.  
  931.      Xview
  932.         The xview3L5.1.tar.gz package is a port of SUN[TM]'s xview3.2
  933.         package by Kenneth Osterberg to Linux. It includes the xview
  934.         toolkit, a set of extensions to X. It will give you the look-
  935.         and-feel of the Open Look[TM] extension to X (many will know
  936.         that from Open Windows[TM] from SUN). You can get it in the
  937.         /pub/Linux/libs/X directory on sunsite or in the
  938.         /pub/linux/binaries/usr.bin.X11 directory on tsx-11 [cf ``Where
  939.         do I get XFree86''].
  940.  
  941.         To install it, untar the tarfile as root in some directory (e.g.
  942.         /usr/src), read the documentation that comes with it (most
  943.         important the README) and run the INSTALL script. Note that you
  944.         need about 25MB free disk space to install it completely (with
  945.         examples). This is partly due to the fact that for some time all
  946.         files are twice on the disk. After running the INSTALL script
  947.         and removing the xview3L5.1 directory you will need about 11 MB
  948.         (including all examples). If you do not want to install the
  949.         examples , you will need about 9 MB. If you do not want to
  950.         compile any program that uses xview, you can spare another 2.5
  951.         MB by removing the static (*.a) and stub (*.sa) libraries. Do
  952.         not remove the shared (*.so) libraries, though!
  953.  
  954.         For running Xview you need at least 8 MB of RAM, better 16 MB.
  955.  
  956.  
  957.      Motif
  958.         This is commercial software, so you will have to pay for it. You
  959.         can find an advertisement from Metrolink (a company that
  960.         provides a port to Linux) on tsx-11:/pub/linux/advertisements.
  961.         There are more companies that sell Motif. Every now and then
  962.         advertisements will appear in comp.os.linux.announce.
  963.  
  964.  
  965.      Windowmanagers [cf. ``Configuration of the window manager'']
  966.         Both aforementioned packages provide window managers different
  967.         than the standard twm that comes with XFree86. Many people do
  968.         not like this window manager. There are several further
  969.         windowmanagers available that run on Linux. A selection of these
  970.         can be found on sunsite in the directory /pub/Linux/X11/Window-
  971.         managers.
  972.  
  973.  
  974.      Additional libraries
  975.  
  976.         Sometimes you will need additional libraries to run binary
  977.         distributions of some application or to compile it yourself [cf.
  978.         ``Compiling X programs'']. If the first is the case, you should
  979.         find a pointer to that library in the Readme file of that
  980.         package. If you do not have any pointer, you should look at the
  981.         /pub/Linux/libs hierarchy at sunsite.  Most libraries that work
  982.         on Linux can be found there. If you cannot find it there and you
  983.         have Internet access, you should follow the instructions on
  984.         getting information below [cf.  ``Finding Information'' ].
  985.  
  986.  
  987.      X11 Applications
  988.         There are many programs and applications available for X, far
  989.         too many to give even examples here. Look through the
  990.         /pub/Linux/X11 hierarchy on sunsite for ports of many packages
  991.         to Linux. Most programs need no changes at all to run on Linux,
  992.         so you should look at the generic X11 program archives as well
  993.         as at the Linux specific sites. One of the largest X11 sites is
  994.         ftp.x.org. In the R5contrib directory you can find many programs
  995.         for X11R5.
  996.  
  997.  
  998.   8.  Compiling programs that use X
  999.  
  1000.   Please read the GCC-FAQ, that can be found in the docs directories of
  1001.   sunsite and tsx-11 before compiling any programs. Many questions (in
  1002.   fact, most) on compiling programs with Linux are answered there. Many
  1003.   Linux distributions include most relevant FAQs in the directory
  1004.   /usr/doc, so you might look there first.
  1005.  
  1006.   If you have the source code for a program that uses X11, usually it
  1007.   will be shipped with an Imakefile instead of a Makefile. What to do
  1008.   now?
  1009.  
  1010.   Run xmkmf in the directory that containes the Imakefile. If there is a
  1011.   hierarchy of directories with Imakefiles, you usually only have to run
  1012.   xmkmf in the root directory of that hierachy. You can configure the
  1013.   rest by typing make Makefiles. This will build the Makefiles in all
  1014.   directories in the hierachy. Then you should run make depend. Don't be
  1015.   afraid if include files like stddef.h, varargs.h, ...  are not found,
  1016.   they are gcc proprietary header files and therefore not in the
  1017.   standard include directories (XFree86 versions prior to 2.1 use a
  1018.   makedepend not based on gcc -M). After that you can make the program
  1019.   by running make and you can install it (usually in /usr/X386/bin) by
  1020.   running make install, installing of the manpages is done by running
  1021.   make install.man. Of course, before even running xmkmf, you should
  1022.   have read the documentation that comes usually with such packages.
  1023.  
  1024.   If libraries are missing, please read section ``Additional libraries''
  1025.   above.
  1026.  
  1027.  
  1028.   9.  Finding Information on X and XFree86 on the net
  1029.  
  1030.   For general X questions you should read the FAQ
  1031.   (ftp://ftp.x.org/R5contrib/FAQ) and the FAQ-Xt
  1032.   (ftp://ftp.x.org/R5contrib/Xt-FAQ) from the comp.windows.x newsgroup
  1033.   (you can achieve them from ftp.x.org in the directory R5contrib or
  1034.   from rtfm.mit.edu in /pub/usenet_by_hierarchy/comp/windows/x by
  1035.   anonymous ftp).  Many Linux distributions include most relevant FAQs
  1036.   in the directory /usr/doc, so you might want to look there first.
  1037.  
  1038.   Please note that comp.windows.x is the newsgroup for general X
  1039.   questions.
  1040.  
  1041.   If you have questions on the XFree86 package and cannot find an answer
  1042.   in the documentation files (XFree86, Xconfig, XF86_* manpages or the
  1043.   README files in /usr/X386/lib/X11/etc) you may want to post a question
  1044.   to a newsgroup. The appropriate newsgroup for that purpose is
  1045.   comp.windows.x.i386unix, as this newsgroup is dedicated to the XFree86
  1046.   system.  If you have a problem with the server and want to post a
  1047.   question to this newsgroup, you should provide enough information for
  1048.   those that want to help you. It is no good idea telling: XFree86 is
  1049.   not working, what do I have to do? Here some things that should be
  1050.   included in all postings that are concerned with server problems:
  1051.  
  1052.   o  which Operating System and which release of it are you running
  1053.  
  1054.   o  which hardware do you have (at least bus type (ISA/EISA/VLB),
  1055.      graphic card (including chipset, video RAM type (D/VRAM), size and
  1056.      speed))
  1057.   o  a concise decription of the problem
  1058.  
  1059.   o  a printout of the server startup (you can generate that by running
  1060.      startx 2>1 > Xerror.log or startx >& Xerror.log depending on
  1061.      whether you use a bourne shell derivate (e.g. bash) or a C shell
  1062.      derivate (e.g. tcsh) as login shell)
  1063.  
  1064.   o  the used parts of the Xconfig (It is not a good idea to include all
  1065.      lines commented out by a leading #. This would be the largest part
  1066.      of your post and most people will already know the copyright
  1067.      statements :-)
  1068.  
  1069.      Furthermore you should say what steps of trouble-shooting you
  1070.      already did (there are some mentioned in the XFree86 documentation
  1071.      files and in Appendix ``Some Questions and Answers'').
  1072.  
  1073.   Bug reports or questions on XFree86 can be sent directly to
  1074.   XFree86@physics.su.oz.au. This is the contact address of The XFree86
  1075.   Project.
  1076.  
  1077.   There are some other newsgroups that cover X related topics:
  1078.  
  1079.   o  comp.windows.x.apps - for X applications
  1080.  
  1081.   o  comp.windows.x.intrinsics - for X intrinsic
  1082.  
  1083.   o  comp.windows.x.motif - for the Motif extension to X
  1084.  
  1085.   o  comp.windows.open-look - for OpenLook and the Xview extension to X
  1086.  
  1087.      Note that most of these groups have FAQ lists that are posted
  1088.      regularly to these groups. As always with regular postings these
  1089.      can be obtained from rtfm.mit.edu via anonymous ftp.
  1090.  
  1091.   Please do not post X related questions to any newsgroup of the
  1092.   comp.os.linux.* hierarchy. You will get better answers to your
  1093.   questions in those newsgroups dedicated to those questions, as nearly
  1094.   all those questions are not Linux-specific.
  1095.  
  1096.  
  1097.   10.  Why should I upgrade my system and how do I do that?
  1098.  
  1099.  
  1100.   Upgrading will always refer to the latest XFree86 distribution
  1101.   (currently 2.1.1).  First of all, take a look at the bugs section [cf.
  1102.   ``Bugs in XFree86'']. If you are caught by one of those bugs, you
  1103.   should upgrade. You should upgrade, if you want to use one of the
  1104.   newer features.  You should upgrade in any case if you are not running
  1105.   at least XFree86 2.0 as the shared libraries of XFree86 version 2 and
  1106.   those of the earlier versions are partly incompatible. Some bugs have
  1107.   been fixed since then and most binary packages that use X11 are linked
  1108.   with the XFree86 2.? libraries.
  1109.  
  1110.   Every subsection has a list of new features (if there are any)
  1111.   angainst the next newer version.
  1112.  
  1113.   Furthermore you should upgrade if you have problems with your Xconfig
  1114.   file and want to use the new ConfigXF86 utility.
  1115.  
  1116.  
  1117.   10.1.  Upgrading from XFree86 versions before 2.0
  1118.  
  1119.   You should get the complete distribution but the fonts files (*-fnt*)
  1120.   which have not changed.
  1121.  
  1122.  
  1123.   10.2.  Upgrading from XFree86 2.0
  1124.  
  1125.   You should get the complete libraries and programs file, as there are
  1126.   some bugfixes (most important several security holes in xterm).  New
  1127.   features in 2.1 are:
  1128.  
  1129.   o  kernel keytable support.
  1130.  
  1131.   o  8bit colour lookup table support for some RAMDACs (S3 &Mach32
  1132.      servers).
  1133.  
  1134.   o  Support for SPEA Mercury, TI RAMDACs, additional line lengths, and
  1135.      (preliminary) Bt485 (S3 server).
  1136.  
  1137.   o  Better DRAM card support (S3 server).
  1138.  
  1139.   o  Pixmux code for some RAMDACs (Mach32 server).
  1140.  
  1141.  
  1142.   10.3.  Upgrading from XFree86 2.1
  1143.  
  1144.   You only need to upgrade if you have problems due to one of the bugs.
  1145.   If you start using XFree86 you should get 2.1.1, as many bugs have
  1146.   been fixed and there is a new configuration utility that will make
  1147.   installation much easier.  New features in 2.1.1:
  1148.  
  1149.   o  ConfigXF86
  1150.  
  1151.   o  full Bt485 support (S3 server).
  1152.  
  1153.  
  1154.   K.  Bugs in XFree86
  1155.  
  1156.   K.1.  XFree86 2.0
  1157.  
  1158.   The know bugs in XFree86 2.0 are:
  1159.  
  1160.   o  No Bt485 pixmux support (S3 server) - fixed in 2.1.1.
  1161.  
  1162.   o  Font restauration and text mode restauration are not working
  1163.      correctly on some S3 cards (S3 server) - fixed in 2.1.1.
  1164.  
  1165.   o  No line length of 1152 supported (S3 server) - fixed in 2.1.
  1166.  
  1167.   o  Linear Frame buffer code buggy (S3 server) - fixed in 2.1.
  1168.  
  1169.   o  LinkKit bug (S3 & VGA16 server) - fixed in 2.1.
  1170.  
  1171.   o  The Compaq AVGA driver is not working correctly - fixed in 2.1.
  1172.  
  1173.   o  The clock probing code is not working for WD90C3? cards - fixed in
  1174.      2.1.
  1175.  
  1176.   o  The ATI SVGA server is not working correctly - fixed in 2.1.1.
  1177.  
  1178.   o  The Mach32 server has problems to detect some more recent revisions
  1179.      of the mach32 chip.
  1180.  
  1181.   o  There are some bugs in the accelerated Cirrus server.
  1182.  
  1183.   o  There is a problem with xset fp rehash due to the memory management
  1184.      - supposedly fixed in 2.1.1.
  1185.  
  1186.  
  1187.  
  1188.  
  1189.   K.2.  XFree86 2.1
  1190.  
  1191.   The know bugs in XFree86 2.1 are:
  1192.  
  1193.   o  The Bt485 pixmux support (S3 server) is only working for some cards
  1194.      (SPEA Mercury). It is not working on most other cards (#9, STB
  1195.      Pegasus,...)  - fixed in 2.1.1 for most cards.
  1196.  
  1197.   o  Font restauration and text mode restauration still not working
  1198.      correctly on some S3 cards - fixed in 2.1.1.
  1199.  
  1200.   o  The ATI SVGA server does not work correctly - fixed in 2.1.1.
  1201.  
  1202.   o  The Mach32 server has problems to detect some more recent revisions
  1203.      of the mach32 chip.
  1204.  
  1205.   o  Less bugs in the Cirrus drivers, but there still are some.
  1206.  
  1207.   o  Still problem with the Compaq driver - fixed in 2.1.1.
  1208.  
  1209.   o  still xset fp rehash problems - fixed in 2.1.1.
  1210.  
  1211.   K.3.  XFree86 2.1.1
  1212.  
  1213.  
  1214.   o  Some not yet resolved problems with the Mach servers.
  1215.  
  1216.  
  1217.   L.  The Future of XFree86
  1218.  
  1219.   At the moment the XFree86 team is working on X11 release 6. The next
  1220.   version, XFree86 3.0 is based on X11R6 and is incorporated in the
  1221.   official X11 distribution. This release is not yet useable on Linux
  1222.   (at least parts of it). Please wait until XFree86 3.1 is released
  1223.   which will provide all features of both X11R6 and the current XFree86
  1224.   version (2.1.1).
  1225.  
  1226.   To get version 3.1 working is first priority for the XFree86 team.
  1227.   After this is done, new features and new hardware will be worked upon.
  1228.  
  1229.  
  1230.   M.  Some Questions and Answers
  1231.  
  1232.  
  1233.   Q: I noticed that X11 Release 6 has been announced. Can I use it on
  1234.   Linux?
  1235.  
  1236.   A: Please look at appendix ``The Future of XFree86'' above. You should
  1237.   not use it at the moment.
  1238.  
  1239.   Q: I started X by running 'X'. I get the stippled background, but no
  1240.   window at all. What am I doing wrong?
  1241.  
  1242.   A: Running X starts only the server, no window-manager and no
  1243.   applications. The usual way to start X is running 'startx'.
  1244.  
  1245.   Q: Is there support for 16-bit or 24-bit colour modes?
  1246.  
  1247.   A: No, there is only support for 1-bit, 4-bit and 8-bit colour in the
  1248.   moment.  The 4-bit server (XF86_VGA16) is in an experimental stage, so
  1249.   there are bugs and problems using it. Most of the known problems are
  1250.   mentioned in the manpage.
  1251.  
  1252.   Q: I have a Logitech serial mouse but it does not work with the
  1253.   Logitech keyword.
  1254.  
  1255.   A: The Logitech keyword is for older Logitech serial mice, more recent
  1256.   Logitech serial mice use the MouseMan or Microsoft keyword. Logitech
  1257.   serial mice plugged into a ps/2 port use the ps/2 keyword.
  1258.  
  1259.   Q: My server is unable to find some of the fonts (e.g. font fixed
  1260.   cannot be loaded at startup).
  1261.  
  1262.   A: First check that the directories in the font path in the Xconfig
  1263.   file are named correctly and contain fonts. If that is the case,
  1264.   running mkfontdir in all of those directories may help you.
  1265.  
  1266.   Q: I have the problem that the fonts are not restored correctly after
  1267.   leaving X. My screen looks totally garbled.
  1268.  
  1269.   A: This is not yet completely resolved. There are utilities called
  1270.   runx , restoretext,... coming with svgalib (sunsite:/pub/Linux/libs)
  1271.   that help in most cases. In the S3 server from XFree86 2.1.1 this bug
  1272.   is fixed.
  1273.  
  1274.   Q: I have a s3 card and it does not work properly. The screen gets
  1275.   distorted when dragging windows and it frequently locks up.
  1276.  
  1277.   A: First try to use options nomemaccess or nolinear. If both does not
  1278.   help and you have a s3 928, try specifying chipset s3_generic in your
  1279.   Xconfig. If nothing helps, it might be a incompatibility problem
  1280.   between your graphic card and your motherboard. Try to see if the card
  1281.   works in a different system, if you can get your hands on one.
  1282.  
  1283.   Q: I had a normal SVGA card up to now with 1 MB of video RAM. With it
  1284.   I could do a virtual resolution of 1152x900 or 1024x1024. Why does it
  1285.   not work on my new s3 card?
  1286.  
  1287.   A: All but the most recent revisions of the s3 chips cannot use a line
  1288.   length of 1152, so a length of 1280 is used for this resolution in
  1289.   XFree86 2.0. The later versions can use the line length of 1152 for
  1290.   the more recent revisions. If you have a new revision, grade up to
  1291.   2.1.1 and it should work.  Furthermore the s3 server needs 1k for the
  1292.   cursor, so a virtual resolution using 1MB will not work.  Note that
  1293.   you will need some memory on the graphics card for font and pixmap
  1294.   caching if you want to get maximum performance from your graphic card.
  1295.   So the memory is not wasted, but will get you a great performance
  1296.   boost. Try running some font or pixmap specific mode of x11perf with
  1297.   maximal allowed virtual resolution (e.g.  1024x1023) and with 1024x768
  1298.   and compare the results!  Recommended resolutions are 1024x768 and
  1299.   1152x800 for 1MB cards.  With the older chip revisions the latter
  1300.   resolution leaves not too much memory to the font cache, so you will
  1301.   have a performance loss using large fonts. For normal use with fonts
  1302.   up to 18 points it should be OK, though.
  1303.  
  1304.   Q: I have a s3 Localbus card and the server cannot find a high memory
  1305.   area. Then it disables direct memory access. What should i do?
  1306.  
  1307.   A: There are some strange problems with Localbus cards. It is being
  1308.   worked upon. If you are using XFree86 2.0, put option "nolinear" and
  1309.   option "memaccess" into your Xconfig file. This will enable the server
  1310.   to use the 64k aperture that is supported even for ISA cards.  This
  1311.   will furthermore prevent the following problem (this bug is only in
  1312.   XFree86 2.0): Due to a bug in the linear frame buffer code, the s3
  1313.   processor is not reset correctly, once a large (e.g. 1024k) linear
  1314.   frame buffer is found. Thus the server will not work after that if it
  1315.   fails to find the high memory area until a hard reset is sent to the
  1316.   chip (i.e.  even a normal reboot will not reset the system).
  1317.  
  1318.   Q: I have a WD90C3x based graphic card. XFree86 2.0 seems not to probe
  1319.   the clocks correctly. What can I do?
  1320.  
  1321.   A: Yup, there is a bug in the clock probing code in XFree86-2.0. It is
  1322.   fixed in 2.1. Grade up!
  1323.  
  1324.   Q: I have a Diamond Viper card. Why does it not work?
  1325.  
  1326.   A: In addition to being a Diamond product, this card is based on the
  1327.   P9000 chip by Weitek. This chip is not yet supported by XFree86, so
  1328.   you have only a chance to get it working with one of the generic
  1329.   servers (i.e. Mono or VGA16). You will have nevertheless the clock
  1330.   setting problem that prevents the other diamond cards from working.
  1331.  
  1332.   Q: I have a card with the Compaq AVGA chip. It does not work.
  1333.  
  1334.   A: The AVGA support seems to be completely broken in 2.0. This is
  1335.   fixed in 2.1.
  1336.  
  1337.   Q: I have a busmouse and am running selection. The server has problems
  1338.   with recognizing the mouse.
  1339.  
  1340.   A: Selection has some problems with busmice. XFree86 cannot open the
  1341.   mouse device if selection is running on it. So kill selection before
  1342.   starting XFree86.
  1343.  
  1344.   Q: The server dies with the message "Cannot find a free VT".
  1345.  
  1346.   A: XFree86 needs a free VT to run on. So if you have put a getty
  1347.   process on every virtual console in you /etc/inittab, XFree86 will not
  1348.   be able to start. I suggest to let /dev/tty8 (for kernel messages) and
  1349.   /dev/tty7 (for XFree86) free of a getty process.
  1350.  
  1351.   Q: Why is the XF86_Mono server not working with my hercules card, I
  1352.   thought this card was supported?
  1353.  
  1354.   A: The hercules driver (as well as the BDM2 driver) is not part of
  1355.   XF86_Mono by default. Get the LinkKit and you can include it.  You
  1356.   will need about 4 MB free disk space and about 5 minutes for building
  1357.   the server (on a 486/30).
  1358.  
  1359.   Q: I have problems with the backspace and delete keys.
  1360.  
  1361.   A: You can solve this using either loadkeys or xmodmap. In your shell
  1362.   initialization file (.bashrc, .zshrc, ...) you have to set the right
  1363.   behaviour of the shell using stty. Please read the manpages how to do
  1364.   that.
  1365.  
  1366.   There are a lot strange phenomena reported that cannot be handeled
  1367.   here.  If your card has a switch for bus waitstates, it helps in many
  1368.   cases to put this to the 1WS setting. You should also look at the
  1369.   remarks above on setting some BIOS values. As many reports (especially
  1370.   on BIOS setting) are contradicting, you should try several settings.
  1371.  
  1372.  
  1373.   N.  Acknowledgements
  1374.  
  1375.   Dirk Hohndel (hohndel@aib.com) and David E. Wexelblat (dwex@aib.com)
  1376.   helped writing this HOWTO.
  1377.  
  1378.  
  1379.   O.  Trademarks
  1380.  
  1381.   XFree86 is a trademark of The XFree86 Project, Inc.
  1382.  
  1383.   Motif is a trademark of the Open Software Foundation.
  1384.  
  1385.   SUN, Xview, and Open Windows are trademarks of SUN Microsystems.
  1386.  
  1387.   Open Look is a trademark of AT&T.
  1388.  
  1389.   Microsoft  is a trademark of Microsoft.
  1390.  
  1391.   Logitech and MouseMan are trademarks of Logitech.
  1392.  
  1393.   Intel and Pentium are trademarks of Intel.
  1394.  
  1395.   PostScript is a trademark of Adobe.
  1396.